print("Example script sq_chengjie.lua.");
local scheme = ut.newSpellQueue()

scheme.add( '神圣风暴', nil, function()
    return getBuffRemianTime('player','神圣十字军') > 0
	and IsSpellInRange('十字军打击', 'target') == 1
end)

scheme.add( '愤怒之锤', 'target')
scheme.add('荣耀圣令', 'player', function()
	local points = UnitPower("player", 9)
	return getHpParent( 'player' ) < 0.4 and
	(3 <= points or
	getBuffRemianTime('player','神圣意志') > 0)
end)
scheme.add('处决宣判', 'player', function()
	-- body
	return getHpParent( 'player' ) < 0.4
end)
scheme.add( '圣殿骑士的裁决', 'target', function()
	return UnitPower("player", 9) > 4
end)
scheme.add( '十字军打击', 'target')
scheme.add( '驱邪术', 'target')
scheme.add( '审判', 'target')
scheme.add( '圣殿骑士的裁决', 'target')
scheme.add( '圣洁护盾', 'player', function()
	-- body
	return getBuffRemianTime('player', '自由之手') == 0 
end)


scheme.add( '清洁术', 'player', function()
    return foreachDebuff('player', function (name, debuffType)
        return debuffType == 'Disease' or debuffType == 'Poison'
	end)
end)

function scheme.ziyou0()
	scheme.sf( '自由之手','player', function()
		return getBuffRemianTime('player', '自由之手') == 0 
	end)
end
function scheme.ziyou1()
	scheme.sf( '自由之手','party1', function()
		return getBuffRemianTime('party1', '自由之手') == 0 
	end)
end

function scheme.addHp(t)
	-- body
	scheme.sf(function()
		-- body
		ut.cast('荣耀圣令', t)
		ut.cast('处决宣判', t)
		if getBuffRemianTime(t,'圣洁护盾') == 0 then
			ut.cast('圣洁护盾', t)
		end
		ut.cast('圣光闪现', t)
	end)
end

function scheme.daduan( )
	-- body
	if interruptJudge('target') then
		ut.cast('责难', 'target')
		return true
	end
end

editWowMacro('自由0', [[
#showtooltip 自由之手
/run s.ziyou0()
]])
editWowMacro('自由1', [[
#showtooltip 自由之手
/run s.ziyou1()
]])
editWowMacro('圣盾术', [[
#showtooltip 圣盾术
/run sf('圣盾术','player')
]])
editWowMacro('圣光闪现', [[
#showtooltip 圣光闪现
/run sf('圣光闪现','player')
]])
editWowMacro('保护之手1', [[
#showtooltip 保护之手
/run sf("保护之手","party1")
]])
editWowMacro('牺牲之手1', [[
#showtooltip 牺牲之手
/run sf("牺牲之手","party1")
]])
editWowMacro('超脱', [[
#showtooltip 超脱
/run sf("超脱","player")
]])
editWowMacro('处决0', [[
#showtooltip 处决宣判
/run sf("处决宣判","player")
]])
editWowMacro('处决1', [[
#showtooltip 处决宣判
/run sf("处决宣判","target")
]])

editWowMacro('jia0', [[
#showtooltip 荣耀圣令
/run s.addHp('player')
]])
editWowMacro('jia1', [[
#showtooltip 荣耀圣令
/run s.addHp('party1')
]])
editWowMacro('责难', [[
#showtooltip 责难
/run s.daduan()
]])
return scheme